﻿namespace MicroBlog.Infrastructure
{
    /// <summary>
    /// 分页列表接口
    /// </summary>
    public interface IPagedList<T>
    {
        /// <summary>
        /// 当前页
        /// </summary>
        int PageIndex { get; }
        /// <summary>
        /// 每页记录数
        /// </summary>
        int PageSize { get; }
        /// <summary>
        /// 上一页页码
        /// </summary>
        int PreviousPage { get; }
        /// <summary>
        /// 下一页页码
        /// </summary>
        int NextPage { get; }
        /// <summary>
        /// 总记录数
        /// </summary>
        int TotalCount { get; }
        /// <summary>
        /// 总页数
        /// </summary>
        int TotalPages { get; }
        /// <summary>
        /// 是否包含上一页
        /// </summary>
        bool HasPreviousPage { get; }
        /// <summary>
        /// 是否包含下一页
        /// </summary>
        bool HasNextPage { get; }
        /// <summary>
        /// 数据集
        /// </summary>
        IList<T> DataSet { get; }
    }
}
